import { defineStore } from 'pinia'
import { ref } from 'vue'

// 用户模块 token, setToken, removeToken
export const useUserStore = defineStore(
  'event-user',
  () => {
    // 存储 token
    const token = ref('')

    // 存储用户信息（用户信息是一个对象）
    const user = ref({})

    /**
     * 设置 token
     * @param {*} newToken
     */
    const setToken = (newToken) => {
      token.value = newToken
    }

    /**
     * 移除 token
     */
    const removeToken = () => {
      token.value = ''
    }

    /**
     * 获取用户信息并进行村粗
     */
    const getUser = () => {
      // 请求获取用户信息
      // const res = await userGetInfoService()
    }

    /**
     * 设置用户信息
     * @param {*} obj
     */
    const setUser = (obj) => {
      user.value = obj
    }

    return {
      token,
      setToken,
      removeToken,
      user,
      getUser,
      setUser
    }
  },
  {
    persist: true
  }
)
